How many blind computer science majors?

Category: Cram Session

Post 1 by Voyager (I just keep on posting!) on Saturday, 13-Mar-2010 19:18:08

I go to school in Austin, where just about every other blind person I know is either doing nothing or studying something else. Maybe this should be on the GeeksRUs board, but if you are a student, or were once a student and now work in this field, I would be interested in hearing about your experiences. Right now I am just trying different things and hoping they work, since the professors don't often know how to help me with accessability issues. I'd say so far I'm doing a pretty good job. However someone with experience would be invaluable. This is sounding more and more vague. If you think it would be easier to discuss live then PM me.
Thanks

Amanda

Post 2 by wildebrew (We promised the world we'd tame it, what were we hoping for?) on Saturday, 13-Mar-2010 19:48:14

Amanda

I have a Comp Sci degree, BS, and then I worked in the field for 5 years, but after that I went to my other major (finance) and now I am in the blind tech field, but thinking about a masters.
If you got issues with coding you can ask about languages and environments that work, Eclipse is good for Java, I used Putty to telnet into a Unix shell and a program called UltraEdit to write and debug code on Windows, then you can save it directly to unix and compile it with the compiler of choice, I did this for Perl and C/C++, but I prefer .net environment for C/C++ and VB.
You may want to consider joining the Blind Programming mailing list (just Google it, I don't have their web page right in fron to me, but I can dig it up if you want).
I'd recommend finding books like "Teach yourself C in 21 days" or Java Or Perl, you can get them off www.bookshare.org.
So once you post what languages and environments you are doing for CS we can be of more help I am sure.
I nkow there are other guys here who are better at this than I am.
cheers
-B

Post 3 by Voyager (I just keep on posting!) on Saturday, 13-Mar-2010 20:13:06

Thanks. Maybe I should have entitled this topic, "Is there a network of blind Comp Sci students and professionals around the world?"
If you could find that mailing list I would appreciate it. The last time someone sent me to a site that seemed to have been dead for years. I was a little more specific as to what languages I'm studying when I posted in the topic called Assembly, which no one is likely to ever read again. Right now I'm taking my first course in Java and advanced C++. I don't have a specific problem right at the moment. I supposed what I'm looking for is a knowledge base, so when things come up I don't have to reinvent the wheel so to speak. For example, someone suggested I learn perl, and I was unawhere that Bookshare had any perl tutorials.
So, what are you doing at the moment in blind tech? I presume you're not trying to build a screen reader under DOS, with legos.

Amanda

Post 4 by wildebrew (We promised the world we'd tame it, what were we hoping for?) on Saturday, 13-Mar-2010 21:05:23

I've written quite a few useful dos programs actually. ;)
If you plan to run a program as part of a scheduled process you often write a console application that you can schedule to run from dos. After all it is quick and easy if you design your code modularly and have classes that do all the work. Then you can write a GUI or command line or web service interface on it pretty easily.
But I certainly have no dos obsession that would be considered unhealthy.
Perl is a good language to learn initially if you want an easy programming type language, you don't hve to worry about variable types of pointers, since it is a scripting language more than anything, and you could use it to write e.g. internet apps and quick scripts that do tings, I've written perl scripts to do simple parsing of data and sorting out files from into folders before the data is processed with other programs.
But if you are into c/c++ I wouldn't bother, I'd rather go with Python, it is a very powerful language, NVDA screen reader is written mostly in NVDA with some parts written in c++.
I believe to enter the mailing list you send a message to program-l-request at freelists.org (replace "at" with the @ sign of course), I think subject is just "subscribe" or you can use subject faq go get a mail back with all the commands you can issue.
This list is active with decent traffic. I just use Outlook rules to keep it in its folder and then you'll never get flooded with messages.
As for myself, I wrote a lot of Java messaging apps, and data mining and report platform with a variety of languages, though mostly vb.net and c#.net.
I currently consult and assist students on high school and university level and am in charge of web accessibility checks and fixes, equipment purchases and am hopefully starting on a huge itnernational research project on improved access to Web 2.0 applications.
cheers
-B

Post 5 by davarro (Newborn Zoner) on Saturday, 13-Mar-2010 21:34:15

I also have a CS degree (applied math/cs actually).

A few memorable points of undergrad come to mind: heavily unix based, fast paced and rigorous, PDF galore, theory/projects comprised all courses. Wrt unix, you can deal with it as wil suggested above or you can dive into a linux distro and ssh in from a terminal. You can also do this via Mac OS X with VoiceOver. Plenty of options here, you just have to ramp up/learn one and learn it quickly. The one negative of Windows is that with a SSH client, it feels "tacked on"; Jaws doesn't properly track focus for the most part; cygwin alleviates this issue a bit since you're in a console window, but a native unix/linux OS forces you to use the native unix tools to get things done.

Latex is your friend. Professors will usually give you materials in this format for exams or lecture notes if you request it (since they wrote it originally that way). It's preferable imo in heavily mathematical courses such as an algorithms course or something like AI. This would probably apply more at your upper division classes.

I've been working for the past five years in industry (Redmond/Cupertino/MV). I'm considering going back to UW for a Ph.D.

Post 6 by wildebrew (We promised the world we'd tame it, what were we hoping for?) on Saturday, 13-Mar-2010 22:25:32

I never got into the Orca thing, and, in retrospect, I should have, I think.
Initially I used a unix command line and the pico editor to write and compile programs and it was horribly slow and I, subsequently, did not get the flashiest grades in my Comp Sci courses, especially since all my other courses I was getting good grades.
I really did not learn to work correctly until after graduation when I started working with this stuff.
So, definitely, if you find yourself in problems with the development applications, ask questions and spend time reconfiguring your approach, even if you had to drop a course or take weeks to get this right, it will save you enormous amount of pain in the long run.
For math, how do you feel about Latex vs Nemeth? Why bother with Nemeth, just have all materials prepared in Latex. The downside though is that Nemeth can be much more compact and Latex code can be extremely ugly since you can have layout commands and even custom routines that make the documents almost impossible to read.

Post 7 by davarro (Newborn Zoner) on Saturday, 13-Mar-2010 22:45:22

Nemeth would certainly be nice if you are very proficient with it and more importantly, you can get the overhead of getting materials translated from lecture notes/books to nemeth shortened. Unfortunately, with the way things usually go, slides get posted late, assigned reading changes the last moment, etc. Latex gives you the most flexibility and you can even write your own problem sets in it and give your graders a nicer time of reading whatever you turn in.

I agree with adjusting your approach as you go. I started using emacs while SSH'ed into an instructional machine running Solaris; definitely slow and cumbersome to get things done. It's mostly a trial and error strategy. I've not meet many who've done it exactly the same way. Emacspeak is an interesting option as well to explore. I'm suggesting moving away from Microsoft-centric tools and technologies because from my experience, computer science academia (especially at large universities) don't use technologies on the Windows stack. If that's not true where you are, then let us know.

Post 8 by Voyager (I just keep on posting!) on Saturday, 13-Mar-2010 22:48:05

That brings me to a question about math:
Is there some software that will correctly output Nemeth to a Braille display from some sort of electronic document? Do either of you use Braille displays? One of my biggest hurtles in school is math, since I can't learn it orally, and I don't usually say can't after just trying something for a few minutes. I must have some form of tactile input to visualize it. I believe I have to take courses from college algebra all the way through calc three. This may seem like a dumb question to you guys, but what is Latex? I've always read Nemeth and have never heard of any other math code. Could this be the digital answer to my math woes?

Post 9 by wildebrew (We promised the world we'd tame it, what were we hoping for?) on Saturday, 13-Mar-2010 23:01:47

I don't think you will have much luck with braille math yet.
The two companies that are closest, and you culd ask for assistance are Viewplus (especially John Gardner) and the company behind the GH Player, think it is www.gh-accessibility.com. You can definitely translate Math ml into speech by using MathPlayer from Design Science (fee tool) or you can convert Latex and, I think, Math ml to braille by using Duxbury's DBT and Nemeth, but I don't think any software supports translating math directly into Nemeth braille, although there are some experiments with math braille and Daisy (I am going to a lecture on this at CSUN in two weeks so I will post back with more info then).
LaTeX (to capitalize it correctly, not to be confused with, admittedly, very attractive material and useful, though not for math), is sort of like html mark up for scientific notation. Most scientific papers and books are written in LaTeX so often you can get the source code from an author or publisher. it is text based with mark up commands, just like html, so you can learn to read and use it.
You can also wirte it and then turn in perfectly formatted math homework.
The best softwaer for this, I have heard, is NftyReader and Chatty Nfty extension, I am also just about to test these apps, just got them purchased for me, so I can't comment on them yet myself.
Math and braille and accessiblity is a very complicated field with a lot of approaches with many parts and I have yet to find one clear cut good solution. I made my way through a lot of math and statistics classes with over reliance on readers and statistics software called R and another one called Guass.
This time I want to do math completely without raders if I can, which is why I want to learn Nemeth, LaTeX (better, I know it fairly well) etc.
Cheers
-B

Post 10 by Voyager (I just keep on posting!) on Saturday, 13-Mar-2010 23:17:06

Thanks for the reply. I had looked up every use of Latex I could find and was confused. When you can, let me know how the NftyReader and Chatty work and how the Daisy + Braille experiments are going. Maybe I'm not at a scholastic level that is high enough to appreciate all the technical problems involved, but I find myself thinking, why didn't they design math code to be easily read to begin with. Math can be complicated enough for the person who isn't blind. Sometimes I start to think we should just scrap certain systems that weren't designed right from the beginning and start over. Okay, end rant. Will you be using a Braille display when testing your new LaTex reading software?

Post 11 by davarro (Newborn Zoner) on Sunday, 14-Mar-2010 3:13:14

Seconding the suggestion of the Infty project which I personally also have not used (but from everything I've heard is fairly impressive). (In case you're wondering about the spelling, infty or infty prints the infinity symbol in LaTeX). They do have an online demo available at
http://www.inftyproject.org/en/demo.html.

Mathematical symbols have been refined over time to convey succinctly numerical operations by using vertical and nonlinear alignments/placement (i.e. integrals, triple integrals, fractions, summations, matricies, etc etc.). That makes it really hard to type it out since computer lines are restricted in alignment. Computer science won't have a significant amount of mathematical notation; only certain specialties like graphics (linear algebra), AI (probability/statistics) really contain meaty math. The most you'll have to deal with is "big O" notation or basically logarithms.

Post 12 by b3n (I'm going for the prolific poster awards!) on Wednesday, 19-May-2010 10:17:37

I know this is taking things a little bit off topic, but I figgured that if your reading this you'd probably be able to help.

Would someone be able to explain to me the workings of a b tree? Or point me in the direction of a place where I can learn about them?
We've covered drawing them in cs but that was a pretty visual process so I didn't really get that much from it. I don't need to be able to draw one, just explain how one should look.
If anyone has any pointers at all then that would be great.
Cheers.

Post 13 by Voyager (I just keep on posting!) on Wednesday, 19-May-2010 14:47:18

I have such fond memories of my data structures course... My professor was very good but had difficulty starting from the begining and explaining things without drawing them. I suffered frequent headaches.
Picture a very simple binary tree. It is pictured like an upside down tree, with the root at the top. The root has two child nodes underneath it, which each have two child nodes underneath them for a total of seven nodes, including the root. The four nodes at the bottom have no children and therefore are called leaf nodes. The only difference when describing b trees is that each non-leaf node may have two or more children within a given range. The nodes of a 2 3 tree, for example, may each either have 2 or 3 children. If all you need is a simple description so that you can picture a simple version in your head, then the wikipedia page should be more than enough.
http://en.wikipedia.org/wiki/B-tree
If, however, at this stage you are expected to write code that implements a b tree and appropriate algorithms, there is likely someone here more qualified to answer your questions.

Amanda

Post 14 by Snoopy (Account disabled) on Thursday, 24-Jun-2010 19:39:22

latex is definitely more flexible than nemeth in my personal experience although I didn't do cs, I was a applied computational mathematics major.
As for math, I had to work one on one with the teaching assistant and it was mostly trial and error when it came to those kind of courses.
The TA is definitely your best bet.

Post 15 by Voyager (I just keep on posting!) on Sunday, 27-Jun-2010 17:29:46

It looks like I'll have a TA all the way through, so that's good to hear.

Post 16 by chaman_1167 (Generic Zoner) on Tuesday, 02-Nov-2010 12:57:54

hello,

I am studying computer science and i am strugling with UML diagrams. What is the most accessible way to draw these diagrams using software? I am being asked to use Star UML to draw and it is not accessible with jaws. We are doing use cases at the moment but will be doing class and activity diagrams soon.

Thanks

Post 17 by Voyager (I just keep on posting!) on Tuesday, 02-Nov-2010 15:36:44

May I ask why they would want you to draw these things? If it is to help you learn things like logic flow or class structure, there are devices which can produce raised-line drawings, but I don't see the benefit to you, the student, if you can't see what you're turning in.

Post 18 by chaman_1167 (Generic Zoner) on Tuesday, 02-Nov-2010 20:26:21

Well it is part of their assessment criteria. I asked whether i could just describe what would be on the diagram, but that wasn't good enough for them. So now i am thinking whether there are other solutions that will enable me to draw using some accessible software, if one exists.

Post 19 by Voyager (I just keep on posting!) on Tuesday, 02-Nov-2010 21:09:07

If you could produce some sort of tactile drawing which they could also see, (using a tracing wheel or drawing kit) would they accept it?

Post 20 by chaman_1167 (Generic Zoner) on Wednesday, 03-Nov-2010 16:01:16

I very much dout it. Its ridiculas really. I guess i am going to have to describe to someone what i want drawn and hope that it is acurate. I will make sure i get it checked by the module staff before the hand in date. They can't really tell me they can't help me then.

Post 21 by Voyager (I just keep on posting!) on Wednesday, 03-Nov-2010 18:02:43

As ridiculous as these teachers sound, I think you are being as reasonable as possible. Let me know how it works out.

Post 22 by The Roman Battle Mask (Making great use of my Employer's time.) on Thursday, 04-Nov-2010 13:31:24

Real programmers don't need no stinking UML diagrams, the code with out of date comments and no external documentation is all you really need.